package com.exam.service;


import com.exam.pojo.ChoiceQuestion;
import com.exam.pojo.ComposePaper;
import com.exam.pojo.FillQuestion;
import com.github.pagehelper.PageInfo;

import java.util.List;

public interface FillQuestionService {
    /**
     * 根据paperId查询填空题题库信息
     * @param paperId
     * @return
     */
    List<FillQuestion> queryByPaperId(Integer paperId);
    /**
     * 根据paperId分页查询选择题题库信息
     * @param paperId
     * @param pageNum
     * @param pageSize
     * @return
     */
    PageInfo<FillQuestion> queryPageByPaperId(Integer paperId, int pageNum, int pageSize);
    /**
     * 根据questionCreatorId分页查询填空题题库信息
     * @param questionCreatorId
     * @param pageNum
     * @param pageSize
     * @return
     */
    PageInfo<FillQuestion> queryPageByQuestionCreatorId(Integer questionCreatorId, int pageNum, int pageSize);

    /**
     * 分页查询所有填空题题库信息
     * @param pageNum
     * @param pageSize
     * @return
     */
    PageInfo<FillQuestion> queryAllPage(int pageNum, int pageSize);

    /**
     * 根据id修改填空题信息
     * @param fillQuestion
     * @return
     */
    int updateById(FillQuestion fillQuestion);

    /**
     * 根据id删除填空题信息
     * @param id
     * @return
     */
    void deleteById(Integer id);

    /**
     * 新增填空题试题
     * @param fillQuestion
     * @return
     */
    int add(FillQuestion fillQuestion);

    /**
     * 根据questionCreatorId查询填空题题库分类及数量
     * @param questionCreatorId
     * @return
     */
    List<ComposePaper> querySubNumByQuestionCreatorId(Integer questionCreatorId);

    /**
     * 查询所有填空题题库分类及数量
     * @return
     */
    List<ComposePaper> querySubNum();
}
